import pytest
import sys

from utils.path_manager import path_manager


def run_tests():
    """使用pytest运行测试"""

    # 基本参数
    pytest_args = [
        f'--html={path_manager.report_path}',
        '--self-contained-html',
        '--reruns', '0',  # 失败重试次数
        '-v'  # Verbose output
    ]
    
    # 处理命令行参数
    # 例如: python run_test_cases.py --browser-type=firefox
    # 将所有命令行参数传递给pytest，除了脚本名称
    cli_args = sys.argv[1:]
    if cli_args:
        # 如果有命令行参数，添加到pytest参数列表中
        pytest_args.extend(cli_args)
    
    pytest.main(pytest_args)

if __name__ == '__main__':
    run_tests()
